package com.taxinfo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.taxinfo.pojo.dto.AccBalMapInfoDto;
import com.taxinfo.pojo.dto.AssetAndLibDto;
import com.taxinfo.pojo.dto.IncomeStmInfoDto;
import com.taxinfo.pojo.dto.MainReportDto;
import com.taxinfo.pojo.vo.MainReport;
import org.springframework.transaction.annotation.Transactional;

import java.io.File;
import java.util.List;
import java.util.Map;

/**
 *
 * @author : wanghy
 * @time    : 2025-01-04 1:34
 */
@Transactional
public interface MainReportService extends IService<MainReport> {
    /**
     * 查询所有数据
     * @return
     */
    List<MainReportDto> selectAllData();

    /**
     *
     * @param decYear
     * @param pSubType
     * @return
     */
    List<MainReportDto> selectDataByCondition(String decYear, String pSubType);

    String impBalanceData(File file,String decYear, String pSubType);

    String createDecFile(String id,String taxNo,String taxName,String sbYear,String sblx,String fileName);

    void saveFileRecord(String id, String fileName);

    String exportSubMapInfoFile(String filePath, String fileName,List<AccBalMapInfoDto> accBalMapInfoDtos);

    String initAccXlsx(File file,String decYear,String pSubType, Map<String, List<String>> columnInfo) ;

    String exportIncFile(String targetFilePath, String fileName, List<IncomeStmInfoDto> incomeStmInfos);

    String exportAssetFile(String targetFilePath, String fileName, List<AssetAndLibDto> assetAndLibDtos);
}
